@echo off
chcp 65001 >nul
echo ========================================
echo 测试工作流Task ID生成
echo ========================================

echo.
echo 问题：新生成的待办任务没有task编号
echo 原因：没有通过工作流引擎获取task ID
echo 修复：添加工作流处理逻辑

echo.
echo ========================================
echo 工作流配置：
echo ========================================
echo - 流程名称：tuizhu
echo - 流程定义文件：bpmn/tuizhu.bpmn20.xml
echo - 业务key：退住申请的ID
echo.
echo 工作流节点：
echo 1. 护理员提交退住申请（assignee1）
echo 2. 退住审批员进行申请单初步审批（assignee2）
echo 3. 退住审批员上传解除协议（assignee2）
echo 4. 退住审批员调整账单（assignee2）
echo 5. 退住审批员完成账单审批（assignee2）
echo 6. 退住审批员退住审批（assignee2）
echo 7. 退住审批员完成最终费用清算（assignee2）

echo.
echo ========================================
echo 修改内容：
echo ========================================
echo.
echo 在 submitApproval 方法中添加工作流处理：
echo.
echo 步骤5：完成当前工作流节点
echo - 查询当前任务：taskService.createTaskQuery()
echo   .processInstanceBusinessKey(busId.toString())
echo   .processDefinitionKey("tuizhu")
echo   .singleResult()
echo - 完成当前任务：taskService.complete(currentTask.getId())
echo.
echo 步骤6：查询下一个工作流节点
echo - 查询下一个任务：taskService.createTaskQuery()
echo   .processInstanceBusinessKey(busId.toString())
echo   .processDefinitionKey("tuizhu")
echo   .singleResult()
echo - 获取下一个任务ID：nextTask.getId()
echo.
echo 步骤7：保存待办任务时使用工作流任务ID
echo - setTaskId(currentTask.getId())
echo - 不再使用null

echo.
echo ========================================
echo 数据对比：
echo ========================================
echo.
echo 修改前（主键420）：
echo - task编号：null（空）
echo - 原因：setTaskId(null)
echo.
echo 修改后：
echo - task编号：工作流生成的UUID
echo - 原因：setTaskId(currentTask.getId())
echo - 示例：96dd86bc-b083-11f0-86ac-92e8685db625

echo.
echo ========================================
echo 测试步骤：
echo ========================================
echo.
echo 1. 提交一个新的退住申请
echo 2. 在待办任务界面点击"处理"
echo 3. 在审批页面填写意见并提交
echo 4. 检查新生成的待办任务（步骤3）
echo 5. 验证task编号字段是否有值
echo.
echo SQL验证：
echo SELECT id, bussniess_id, task_id, title, step_no
echo FROM pending_tasks
echo WHERE bussniess_id = 85
echo ORDER BY create_time DESC;
echo.
echo 预期结果：
echo - task_id字段有值（UUID格式）
echo - 不再是null
echo - 与工作流引擎生成的任务ID一致
echo.
echo 修复完成！
pause
